package com.bz.service;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.bz.common.PageInfo;
import com.bz.entity.UserEntity;

public interface IUserService {

    /**
     * 下拉框查询所有用户
     * 
     * @param query
     * @return
     */
    public List<UserEntity> getAll(QueryWrapper<UserEntity> query);

    /**
     * 获取用户
     * 
     * @param parMap
     * @return
     */
    public PageInfo<UserEntity> getUser(PageInfo page, String searchText, String roleId);

    /**
     * 检查数据是否存在
     * 
     * @param parMap
     * @return
     */
    public List<UserEntity> getUser(Map<String, Object> parMap);

    /**
     * 通过ID获取数据
     * 
     * @param id
     * @return
     */
    public UserEntity info(Long id);

    /**
     * 添加用户
     * 
     * @param userDto
     */
    public void insert(UserEntity userDto, String roles);

    /**
     * 修改数据
     * 
     * @param userDto
     */
    public void update(UserEntity userDto, String roles);

    /**
     * 更新基本信息
     * 
     * @param userDto
     * @param roles
     */
    public void updateInfo(UserEntity userDto);

    /**
     * 更新启用停用
     * 
     * @param userDto
     */
    public void updateStatus(Long id, String status);

    /**
     * 删除用户
     * 
     * @param parMap
     */
    public void delete(Long id);

    /**
     * 更新密码
     * 
     * @param parMap
     */
    public void updatePassword(String oldPassword, String password);

    /**
     * 设置密码
     * 
     * @param id
     * @param password
     */
    public void setPassword(Long id, String password);
}
